package com.fs.jzzn.pojo;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.Entity;
import javax.persistence.Table;

import org.apache.commons.lang3.StringUtils;

import com.fs.base.pojo.PEntity;
import com.fs.base.utils.ExcelUtils;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author TiddlerCJ
 * @desc 分包单位/总包单位/其他业务单位
 */
@Entity
@Table(name="p_assist_unit")
@Data@EqualsAndHashCode(callSuper=false)
public class AssistUnit  extends PEntity{
	private String unitNo;	//供应商编码系统自动分配，分配原则为GYS201804240001（供应商+注册日期+注册序号）
	private String name;			//供应商名称-如果供应商为公司则名称为供应商全称，供应商为个人则为施工队负责人或施工队长与我公司签订合同的个人
	private String unitKind;		//公司0/个人1
	
	private String lealPerson;	//法人代表
	private String lealPersonCard;//法人身份证号-身份证号
	private String lealPersonCardEndDate;//法人身份证截止日期-身份证截止日期
	
	private String businessType;//公司经营性质
	private Double registeredCapital;//注册资金
	private String registeredDate;//注册时间：
	
	private String businessScope;//营业范围：
	private String registeredAddr;//注册地址：
	private String linkAddr;//通讯地址：办公地址，保证可以收到快递及邮件
	private String taxProperty;// 企业纳税性质：
	private String threeInOne;//是否三证合一：是0/否1
	private String  unifiedCreditCode;//统一社会信用代码 三证合一
	
	//三证不合一
	private String licenseNumber;	//营业执照注册号
	private String organizationNo;	//组织机构代码
	private String taxId;//税务登记号
	
	private String bank;		//开户行
	private String accountPayee;//收款帐号
	
	private String linkMan;		//联系人
	private String payee;		//收款人
	private String linkPhone;	//联系电话
	private String type;		//单位类型
	
	
	//公司简介或业务范围描述-remark
	/*
	 * 附件上传
	 */
	//法人身份证正反面上传扫描件
	//营业执照上传：
	//开户许可证上传
	
	//组织机构代码
	//税务登记号
	//身份证正反面上传扫描件
	//银行卡照片
	
	public static List<AssistUnit> excelDataFormat(List<List<String>> data) {
		List<AssistUnit> list = new ArrayList<AssistUnit>();
		for(List<String> rowData: data){
			AssistUnit a = excelData2Bean(rowData);
			if(a==null) continue;
			list.add(a);
		}
		//删除标题行
		//if(list.size()>0) { list.remove(0); }
		return list;
	}
	
	//"[\"单位名称\",\"联系人\",\"联系电话\",\"收款人\",\"收款帐号\",\"开户行\",\"单位类别\"]";
	private static AssistUnit excelData2Bean(List<String> row){
		row = ExcelUtils.dataLenFomart(row, 7);
		
		AssistUnit p = new AssistUnit();
		p.setName(row.get(0));//单位名称
		if(StringUtils.isBlank(p.getName())){
			return null;
		}
		p.setLinkMan(row.get(1));//联系人
		p.setLinkPhone(row.get(2));//联系电话
		p.setPayee(row.get(3));//收款人
		p.setAccountPayee(row.get(4));//收款帐号
		p.setBank(row.get(5));//开户行
		p.setType(row.get(6));//单位类别
		return p;
	}
}
